Physiological monitoring methods and systems utilizing distributed algorithms

ABSTRACT

Systems and methods are provided for operating a physiological monitoring system that comprises a distributed algorithm. The physiological monitoring system may comprise a sensor and a physiological monitor that may be communicatively coupled with the sensor. The sensor may store algorithm configuration data; and the physiological monitor may store an executable code segment configured to execute a first algorithm. The physiological monitor may be configured to receive the algorithm configuration data and to configure or modify at least part of the first algorithm based upon the algorithm configuration data to determine at least one physiological parameter of a subject based on physiological signal provided by the sensor.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. application Ser. No.16/270,488, filed Feb. 7, 2019, which application is a divisional ofU.S. application Ser. No. 15/047,770, filed Feb. 19, 2016, now U.S. Pat.No. 10,213,121, entitled “PHYSIOLOGICAL MONITORING METHODS AND SYSTEMSUTILIZING DISTRIBUTED ALGORITHMS”, which claims the benefit of thefiling date of provisional U.S. Patent Application No. 62/118,406, filedFeb. 19, 2015.

SUMMARY

The present disclosure relates to generating and processing signals in aphysiological monitoring system, and more particularly to techniques formodifying or augmenting algorithms stored by a monitor of thephysiological system using data stated on a physiological sensor.

The present disclosure is directed towards physiological monitoringsystems, such as medical devices that utilize distributed algorithms. Insome embodiments, the physiological monitoring system may comprise asensor configured to store algorithm configuration data and generate aphotoplethysmography (PPG) signal. The physiological monitoring systemmay also comprise a physiological monitor that comprises a port,non-transitory memory configured .to store an executable code segmentconfigured to execute a first algorithm, and at least one processor. Theport (e.g., a bi-directional input/output) may be communicativelycoupled to the sensor and may be configured to receive the algorithmconfiguration data and the PPG signal from the sensor. The at least oneprocessor may be configured to configure or modify at least a part ofthe first algorithm based upon the algorithm configuration data receivedby the monitor from the sensor and to execute the executable codesegment to execute the first algorithm as configured or modified todetermine at least one physiological parameter of a subject based on thePPG signal. The at least one processor may further be configured todelete the algorithm configuration data from the monitor, or deactivatethe configuration or modifications of the first algorithm after thesensor becomes communicatively disconnected from the port. By providingalgorithm configuration data on the sensor, new algorithm configurationsmay be provided to the monitor without the need for afield update of allinstalled monitors. Rather, the sensor may carry the most updatedconfiguration data to the monitor for execution during patientmonitoring, providing a higher quality calculation of patient parametersthan otherwise would be possible without the algorithm configurationdata. Additionally, different types of sensors may have differentcapabilities, which can be reflected in the algorithm configuration datathey carry.

In some embodiments, a physiological sensor may be provided. Thephysiological sensor may comprise at least one light source configuredto generate a light signal, at least one light detector configured toreceive the light signal after the light signal has been attenuated bybody tissue of a subject, and non-transitory memory (e.g., integratedmemory) configured to store algorithm configuration data. Thephysiological sensor may further comprise a port. The port may comprisea bi-directional input/output port, a wireless interface, NFC (nearfield communication) interface, RFID link, one-wire interface, I2C, SPI,UART, or any other type of a port or communication interface. In someembodiments, the port may also have other capabilities. For example, theport may comprise an output of a photo-detector capable of transmittingPPG data. The port may be configured to transmit the light signal to aphysiological monitor that is communicatively coupled to the port and totransmit algorithm configuration data to the physiological monitor,which is configured to execute an executable code segment stored on thephysiological monitor, as configured or modified by the algorithmconfiguration data received from the sensor to determine at least onephysiological parameter of the subject based on the light signal. Thealgorithm configuration data may be deleted, or algorithm configurationsor modifications may be deactivated after the physiological monitorbecomes communicatively disconnected from the sensor. In someembodiments, the physiological monitor may become communicativelydisconnected from the sensor, for example, when the sensor is physicallydisconnected form the physiological monitor, or when the sensor is movedout of the wireless range of the physiological monitor.

In some embodiments a physiological monitoring system may be provided.The physiological monitoring system may comprise a sensor that isconfigured to store algorithm configuration data and generate aphotoplethysmographic (PPG) signal. The physiological monitoring systemmay further comprise a physiological monitor. The physiological monitormay comprise a port that is communicatively coupled to the sensor and isconfigured to receive the algorithm configuration data and the PPGsignal from the sensor. The physiological monitor may comprisenon-transitory memory configured to store a sequence of orderedalgorithm stages wherein one of the algorithm stages comprises aconfigurable algorithm stage, the configurable algorithm stagecomprising a plurality of alternative executable code segments. Thephysiological monitor may comprise at least one processor that isconfigured to select one of the plurality of alternative executable codesegments for execution based on the algorithm modification data, andexecute each algorithm stage of the sequence of ordered algorithm stagesto determine at least one physiological parameter of a subject based Onthe PPG signal, where the selected alternative executable code segmentis executed during the execution of the adjustable algorithm stage.

BRIEF DESCRIPTION OF THE FIGURES

The above and other features of the present disclosure, its nature andvarious advantages will be more apparent upon consideration of thefollowing detailed description, taken in conjunction with theaccompanying drawings in which:

FIG. 1 shows a block diagram of an illustrative physiological monitoringsystem in accordance with some embodiments of the present disclosure;

FIG. 2 shows a block diagram of an example state of the monitor memoryof the physiological monitoring system in accordance with someembodiments of the present disclosure;

FIG. 3 shows a block diagram of several exemplary states of the monitormemory and sensor memory of the physiological monitoring system inaccordance with some embodiments of the present disclosure;

FIG. 4 shows a block diagram of yet another exemplary state of themonitor memory and sensor memory of the physiological monitoring systemin accordance with some embodiments of the present disclosure; and

FIG. 5 shows an illustrative flow diagram including steps for creatingand executing an algorithm in accordance with some embodiments of thepresent disclosure.

DETAILED DESCRIPTION OF THE FIGURES

The systems and methods described below may be implemented using aphysiological monitoring system, such as a pulse oximeter, regionaloximeter, a photoplethysmographic (PPG) system, anelectroencephalography (EEG) system, a temperature monitoring system, ananesthesia monitoring system, a brain monitoring system, or any otherkind of medical monitoring system. In some embodiments, the PPG devicemay comprise a monitor and a sensor that may be commutatively coupled tothe monitor. The sensor may be configured to generate a PPG signal andtransmit the signal to the physiological monitor. The physiologicalmonitor may store one or more executable code segments. Thephysiological monitor may be configured to execute an algorithm forseveral algorithms by executing one or more of the executable codesegments in a sequence. In some embodiments, the one or more algorithmsmay include an algorithm for determining one or more physiologicalparameters of a subject based on the PPG signal received from thesensor. In some embodiments, it may be desirable for the physiologicalmonitoring system to use algorithms that are specific to a sensor thatis currently communicatively coupled to the physiological monitor. Forexample, the sensor may include specific types of capabilities thatother sensors lack. In another example, a sensor may require calibrationthat is specific to that type of sensor. In yet another example, thesensor may store an update for an algorithm that only works with newermodels of sensors. The sensor may be manufactured significantly laterthan the monitor, and may comprise new executable code segments that maybe used by the monitor to operate such newer sensor. Consequently, itmay be advantageous to distribute parts of an algorithm between themonitor and the sensor. In some embodiments, parts of the algorithmstored by the sensor may be integrated with parts stored by the monitorwhen the sensor becomes communicatively coupled to the monitor. In someembodiments, the algorithm stored on the monitor may be modified orconfigured using data stored on the sensor.

For purposes of this disclosure an “executable code segment” may referto any distinct executable command or a distinct combination ofexecutable commands. Each executable code segment may be separatelyaddressable. In some embodiments, a processor may be configured toexecute the executable code segment. In some embodiments, the executablecode segment may comprise one or more executable commands that comprisesa function, a software class, a software object, an addressablecombination of commands, any other type of a combination of executablecommands, or any combination thereof. In some embodiments, theexecutable code segment may comprise one or more executable commandswritten in a high-level programming language such as C, C+, BASIC, orany other programming language known in the art. In some embodiments,the executable code segment may comprise one or more executable commandswritten in an assembly language that is specific to a processor or to acombination of processors (e.g. x86, SPARC, RISC, ARM). In someembodiments, the executable code segment may comprise one or moreexecutable commands written in a scripting language such as Java, PHP,Python, a proprietary scripting language, or any other type of scriptinglanguage known in the art. In some embodiments, the executable codesegment may comprise script language instructions that may beinterpreted by a script interpreter (e.g., Java Virtual Machine or apropriety script interpreter).

For purposes of this disclosure “deactivating” an “executable codesegment” may refer to preventing further use of the executable codesegment. In some embodiments, a deactivated executable code segment maybe marked as inactive or stale, preventing any future use of thatexecutable code segment. In some embodiments, a deactivated executablecode segment may be placed into temporary memory and become deleted at alater time when that memory becomes allocated for other purposes. Insome embodiments, the future use of the deactivated executable codesegment may be prevented by other techniques, such as: configuring otherexecutable code segments not to call or reference the deactivatedexecutable code segment, placing the deactivated executable code segmentin an inaccessible memory location, or by any other technique known inthe art.

For purposes of this disclosure an “algorithm stage” may refer to anexecutable command or a combination of executable commands that, whenexecuted, carry out a specific portion of an algorithm. In someembodiments, an algorithm stage may comprise one or more executable codesegments. In some embodiments, a sequence of algorithm stages may definean algorithm that is configured for a specific purpose. For example, analgorithm for determining a physiological parameter of a subject maycomprise a plurality of algorithm stages (e.g., an algorithm stage fordigital signal conditioning, an algorithm stage for signaldecimation/interpolation, an algorithm stage for computing aphysiological parameter etc.) In some embodiments, the algorithm isexecuted by executing each of the algorithm stages of the algorithm in asequence. The sequence of execution may be configured before (e.g.,predefined) or during the execution of the algorithm.

For purposes of this disclosure a “configurable algorithm stage” mayrefer to an algorithm stage that may be modified or configured prior toexecution. In some embodiments, configurable algorithm stage maycomprise a plurality of alternative executable code segments. In someembodiments, one of the alternative executable code segments may beselected for execution prior to the configurable algorithm stage beingexecuted. The executable code segments that are not, selected, may benot executed when the configurable algorithm stage is executed. In someembodiments, a configurable algorithm stage may comprise a code segmentthat is modified prior to execution.

For purposes of this disclosure “algorithm configuration data” may referto any type of a data structure or any other type of data that may beused to configure or modify an algorithm or a configurable algorithmstage. For example, algorithm configuration data may include data thatis used to select one of the alternative executable code segments of aconfigurable algorithm stage for execution. In some embodiments,algorithm configuration data may be used to configure one or moreconfigurable algorithm stages, the sequence of algorithm stages, anyother configurable aspect of the algorithm, or any combination thereof.For example, algorithm configuration data may include: data whichidentifies which executable code segments of the algorithm are to beexecuted, data that specifies the order of execution of executable codesegments, data that specifies hardware capabilities of a device, or anyother type of data that may be used to configure an aspect of thealgorithm.

In some embodiments, a sensor may be configured to store a firstexecutable code segment. The segment may be transmitted to thephysiological monitor when the sensor becomes communicatively coupled tothe physiological monitor. In some embodiments, the physiologicalmonitor may then create a complete algorithm that includes the firstexecutable code segment and one or more executable code segments thatwere stored by the physiological monitor. For example, the completealgorithm may be used to determine one or more physiological parameters(e.g., pulse rate and oxygen saturation) based on the PPG signal. Insome embodiments, the sensor may store executable code segments thatprovide algorithm improvements that are specific to the sensor. In someother embodiments, the sensor may store one or more executable codesegments that provide an update that may be specific to that sensor.Once the sensor becomes communicatively disconnected from thephysiological monitor, the monitor may delete or deactivate theexecutable code segment received from the sensor.

In some embodiments, the sensor may be configured to store algorithmconfiguration data for an algorithm stored on the physiological monitor.The sensor may be configured to transmit the algorithm configurationdata to the monitor when the sensor becomes communicatively coupled tothe monitor. The monitor may store a sequence of algorithm stages. Themonitor may be configured to execute the sequence of algorithm stages toaccomplish a certain task, such as determining physiological parameters.Some algorithm stages may be configurable algorithm stages that compriseseveral alternative executable code segments. For example, somealternative code segments may be specific to certain types of sensors.For each configurable algorithm stage, the monitor may select one of theexecutable code segments for execution based on the algorithmconfiguration data received from the sensor. Once the sensor becomescommunicatively disconnected from the physiological monitor, thephysiological monitor may delete the algorithm configuration datareceived from the sensor.

As mentioned above, the foregoing techniques may be implemented in anoximeter. An oximeter is a medical device that may determine the oxygensaturation of an analyzed tissue. One common type of oximeter is a pulseoximeter, which may non-invasively measure the oxygen saturation of apatient's blood (as opposed to measuring oxygen saturation invasively byanalyzing a blood sample taken from the patient). Pulse oximeters may beincluded in patient monitoring systems that measure and display variousblood flow characteristics including, for example, blood oxygensaturation (e.g., arterial, venous, or both). Such patient monitoringsystems, in accordance with the present disclosure, may also measure anddisplay additional or alternative physiological parameters such as pulserate, respiration rate, respiration effort, blood pressure, hemoglobinconcentration (e.g., oxygenated, deoxygenated, and/or total), cardiacoutput, fluid responsiveness parameters, any other suitablephysiological parameters, or any combination thereof.

An oximeter may include at least one light sensor that is placed at asite on a subject. For example, the light sensor may be placed on afingertip, toe, forehead or earlobe, or in the case of a neonate, acrossa foot or hand. The light sensor may also be placed at any othersuitable location on a subject. The oximeter may use at least one lightsource to pass light through blood perfused tissue and photoelectricallysense the absorption of the light in the tissue. The oximeter maymeasure the intensity of light that is received at the light sensor as afunction of time. The oximeter may also include sensors at multiplelocations. A signal representing light intensity versus time or amathematical manipulation of this signal (e.g., a scaled versionthereof, a log taken thereof, a scaled version of a log taken thereof,inverted signal, etc.) may be referred to as the photoplethysmograph(PPG) signal. In addition, the term “PPG signal,” as used herein, mayalso refer to an absorption signal (i.e., representing the amount oflight absorbed by the tissue) or any suitable mathematical manipulationthereof. The light intensity or the amount of light absorbed may then beused to calculate any of a number of physiological parameters.

In some embodiments, the photonic signal interacting with the tissue isof one or more wavelengths that are attenuated by the blood in an amountrepresentative of the blood constituent concentration. Red and infrared(IR) wavelengths may be used because it has been observed that highlyoxygenated blood will absorb relatively less red light and more IR lightthan blood with a lower oxygen saturation. By comparing the intensitiesof two wavelengths at different points in the pulse cycle, it ispossible to estimate the blood oxygen saturation of hemoglobin inarterial blood.

The system may process data to determine physiological parameters usingtechniques well known in the art. For example, the system may determinearterial blood oxygen saturation using two wavelengths of light and aratio-of-ratios calculation. As another example, the system maydetermine regional blood oxygen saturation using two wavelengths oflight and two detectors located at different distances from theemitters. The system also may identify pulses and determine pulseamplitude, respiration, blood pressure, other suitable parameters, orany combination thereof using any suitable calculation techniques. Insome embodiments, the system may use information from external sources(e.g., tabulated data, secondary sensor devices) to determinephysiological parameters.

It will be understood that the techniques described herein are notlimited to pulse oximeters and may be applied to any suitablephysiological monitoring device such as: a single wavelength monitoringdevice, a regional oximeter, an electroencephalography (EEG) system, atemperature monitoring system, an anesthesia system, a brain monitoringsystem, or any other kind of medical monitoring system.

FIG. 1 shows a block diagram of illustrative physiological monitoringsystem 100 in accordance with some embodiments of the presentdisclosure. System 100 may include a sensor 150 and a monitor 101 forgenerating and processing, sensor signals (e.g., as PPG signal) that mayinclude physiological information relating to a subject. In someembodiments, sensor 150 and monitor 101 may be part of an oximeter. Insome embodiments, system 100 may include more than one sensor.

The components of the system 100 are merely illustrative and anysuitable components and combinations of components may be used forperforming the operations of an oximeter.

Sensor 150 of physiological monitoring system 100 may include lightsource 160 and detector 170. Light source 160 may be configured to emitphotonic signals having one or more wavelengths of light (e.g. red andIR) into a subject's tissue. For example, light source 160 may include ared light, emitting, light source and an IR light emitting light source,e.g. red and IR light emitting diodes (LEDs), for emitting light intothe tissue of a subject to generate sensor signals that includephysiological information. In one embodiment, the red wavelength may bebetween about 600 nm and about 750 nm, and the IR wavelength may bebetween about 800 nm and about 1000 nm. It will be understood that lightsource 160 may include any number of light sources with any suitablecharacteristics. In embodiments where array of sensors is/used in placeof single sensor 150, each sensor may be configured to emit a singlewavelength. For example, a first sensor may emit only a red light whilea second may emit only an IR light.

It will be understood that, as used herein, the term “light” may referto energy produced by radiative sources such as electromagneticradiative sources and may include, for example, any wavelength withinthe radio, microwave, millimeter wave, infrared, visible, ultraviolet,gamma ray or X-ray spectra. Detector 170 may be chosen to bespecifically sensitive to the chosen targeted energy spectrum of lightsource 160.

In some embodiments, detector 170 may be configured to detect theintensity of light at the red and IR wavelengths. In some embodiments,an array of sensors may be used and each sensor the array may beconfigured to detect an intensity a single wavelength. In operation,light may enter detector 170 after passing through the subject's tissue.Detector 170 may convert the intensity of the received light into anelectrical signal. The light intensity may be directly related to theabsorbance and/or reflectance light in the tissue. That is, when morelight at a certain wavelength is absorbed or reflected, less light ofthat wavelength is received from the tissue by detector 170.

After converting the received light to an electrical signal, detector170 may send the detection signal (e.g., a PPG signal) to monitor 101,here the detection signal may be processed and physiological parametersmay be determined. In some embodiments, the detection signal may bepreprocessed by sensor 150 before being transmitted to monitor 101. Insome embodiments, monitor 101 may perform any suitable analogconditioning of the detector signal. The conditioning performed mayinclude any type of filtering (e.g., low pass, high pass, band pass,notch, or any other suitable filtering), amplifying, performing anoperation on the received signal (e.g., taking a derivative, averaging),performing any other suitable signal conditioning (e.g., converting acurrent signal to a voltage signal), or any combination thereof. In someembodiments, one or more gain settings may be used in analogconditioning to adjust the amplification of the detector signal.

Although only one detector 170 is depicted in FIG. 1 , in someembodiments, sensor 150 may include additional detectors located atdifferent distances from the light source 160. In some embodiments,sensor 150 may send the detection signal to monitor 101 using sensorport 175. Sensor port 175 may comprise any kind of wired or wirelessconnectors suitable for transmitting the detection signal, or any kindof communication of connectors. For example, sensor port 175 maycomprise a COM port, Ethernet port, wireless port, a proprietary port,any other communication port, or any combination thereof.

Sensor 150 may include sensor memory 165. Sensor memory 165 may compriseRAM memory, FLASH memory, hard-drive memory, any kind of non-transitorymemory, or any combination thereof. Sensor memory 165 may store one ormore executable code segments, algorithm configuration data, other typesof data or any combination thereof. In some embodiments, sensor 150 maybe configured to send the contents of sensor memory 165 to monitor 101.In some embodiments, the contents of sensor memory 165 may be sent usingsensor port 175. In some embodiments, the contents of sensor memory 165may be sent immediately after, or in response to, sensor 150 becomingcommutatively coupled to monitor 101. In some embodiments, the contentsof sensor memory 165 may be transmitted in response to a requestreceived from monitor 101. The request may specify which contents ofsensor memory 165 are to be transmitted.

Sensor 150 may also include additional components not depicted in FIG. 1. For example, sensor 150 may include an internal power source (e.g., abattery) and a wireless transmitter for communicating with monitor 101.As another example, sensor 150 may include additional sensor componentssuch as, for example, a temperature sensor.

In the embodiment shown, monitor 101 includes user interface 110,processor 115, monitor memory 120, and communication interface 125.Monitor 101 may be communicatively coupled to sensor 102 via monitorport 130. Monitor port 130 may comprise any kind of wired connecters,wireless connecters, or any combination of connecters. Wired connectersmay use a cable that includes one or more electronic conductors, one ormore optical fibers, any other suitable communication components, anysuitable insulation or sheathing, or any combination thereof. Monitorport 130 may include a sensor port for mating with a cable. For example,monitor port 130 may comprise a COM port, Ethernet port, wireless port,a proprietary port, any other communication port, or any combinationthereof.

Processor 115 may be configured to receive and process the detectionsignal from sensor 150. Processor 115 may be configured to execute avariety of algorithm stages stored by monitor memory 120 to process thedetection signal. Processor 115 may also be configured to execute anysoftware (e.g., algorithm stages comprising executable code segments)stored in monitor memory 120, which may also include an operating systemand one or more applications, as part of performing the functionsdescribed herein. For example, processor 115 may determine one or morephysiological parameters based on the received physiological signals.Processor 115 may include an assembly of analog or digital electroniccomponents. Processor 115 may calculate physiological information. Forexample, processor 115 may compute one or more of blood oxygensaturation (e.g., arterial, venous, or both), pulse rate, respirationrate, respiration effort, blood pressure, hemoglobin concentration(e.g., oxygenated, deoxygenated, and/or total), cardiac output, fluidresponsiveness parameters, any other suitable physiological parameters,or any combination thereof. Processor 115 may perform any suitablesignal processing of a signal, such as any suitable scaling, band-passfiltering, adaptive filtering, closed-loop filtering, any other suitablefiltering, and/or any combination thereof. Processor 115 may alsoreceive input signals from additional sources not shown. For example,processor 115 may receive an input signal comprising information abouttreatments provided to the subject from user interface 110. Additionalinput signals may be used by processor 115 in any of the calculations oroperations it performs.

Monitor memory 120 may include any suitable non-transitorycomputer-readable media capable of storing information that can beinterpreted by processor 115. In some embodiments, memory 120 may storecalculated values, such as blood oxygen saturation, pulse rate,respiration rate, respiration effort, blood pressure, hemoglobinconcentration, cardiac output, and fluid responsiveness parameters,fiducial point locations or characteristics, initialization parameters,adaptive filter parameters, any other calculated values, or anycombination thereof, in a memory device for later retrieval. Thisinformation may be data or may take the limn of computer-executableinstructions, such as software applications, that cause a processor toperform certain functions and/or computer-implemented methods. Computerstorage media may include volatile and non-volatile, removable andnon-removable media implemented in any method or technology for storageof information such as computer-readable instructions, data structures,program modules, or other data. Computer storage media may include, butis not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solidstate memory technology, CD-ROM, DVD, or other optical storage, magneticcassettes, magnetic tape, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to store thedesired information and which can be accessed by components of thesystem. Processor 115 may be communicatively coupled with user interface110 and communication interface 125.

Algorithm stages stored by monitor memory 120 may include a digitalconditioning algorithm stage that may be used to perform any suitabledigital conditioning of the detector signal. Digital conditioningalgorithm stages may include any type of digital filtering of the signal(e.g., low pass, high pass, band pass, notch, or any other suitablefiltering), amplifying, performing an operation on the signal,performing any other suitable digital conditioning, or any combinationthereof.

Algorithm stages stored by monitor memory 120 may include adecimation/interpolation algorithm stage that may be used to decreasethe number of samples in a digital detector signal received from sensor150. For example, the decimation/interpolation algorithm stage maydecrease the number of samples by removing samples from the detectorsignal or replacing samples a smaller number of samples. Thedecimation/interpolation algorithm stage may include or be followed by afiltering algorithm stage that may be used to smooth the output signal.

Algorithm stages stored by monitor memory 120 may include an ambientsubtraction algorithm stage that may operate on the digital signal. Insome embodiments, ambient subtraction algorithm stage may be used toremove dark or ambient contributions to the received signal or signals.

In some embodiments, monitor 101 may be configured to receive a firstexecutable code segment from sensor 150. The first executable codesegment may be stored in the sensor memory 165. The sensor 150 may beconfigured to transmit the first executable code segment to monitor 101when sensor 150 becomes communicatively coupled to monitor 101. In someembodiments, sensor 150 may be configured to send the first executablecode segment via sensor port 175, while monitor 101 may be configured toreceive the first executable code segment via monitor port 130. Monitor101 may also be configured to receive a PPG signal generated by sensor150.

In some embodiments, monitor memory 120 may be configured to store asecond executable code segment. In some embodiments, once monitor 101receives the first executable code segment, the first executable codesegment may also be stored in monitor memory 120. In some embodiments,first and second executable code segments, when combined, may define analgorithm. For example, the first and second executable code segmentsmay define an algorithm that is capable of when executed, determining aphysiological parameter of a subject (e.g., pulse rate, oxygensaturation, etc.). In other embodiments, first and second executablecode segments may define an algorithm that is capable of accomplishingother tasks, such as: sensor calibration, user communication, hostcommunication, signal conditioning, signal filtering, gain control(including gain control for optimizing signal-to-noise ratio and gaincontrol for patient safety), identifying alarm conditions and generatingalarms by integrating multiple physiological factors, optimizing powerconsumption, generating, a user interface, and generating error codesand informational messages.

In some embodiments, processor 115 may be configured to execute bothfirst and second executable code segments to determine a physiologicalparameter of a subject based on the PPG signal received from sensor 150.The physiological parameter may then be displayed via user interface110. In some embodiments, processor 115 may be configured to delete thefirst executable code segment from monitor memory 120 or deactivate thefirst executable code segment after sensor 150 becomes communicativelydisconnected from monitor 101. In some embodiments, the first executablecode segment may be deleted in response to sensor disconnection.Alternatively, the first executable code segment may be deleted after acertain predetermined amount of time has passed after sensordisconnection, or when another sensor becomes coupled to monitor 101.

In some embodiments, monitor memory 120 may store the second executablecode segment using permanent memory (e.g., hard disk drive or read onlymemory), while the first executable code segment is stored usingtemporary memory (e.g., RAM). In some embodiments, the first executablecodes segment may be never stored in full by the temporary memory.Instead, each command of the first executable code may be stored usingtemporary memory only when necessary for execution of that command.Consequently, the second executable code segment may persist throughconnection/disconnection of multiple sensors, while the first executablecode segment may be deleted due to natural operation of temporarymemory. For example, RAM memory may delete the first executable codesegment when the first executable code segment is no longer needed andthe memory becomes allocated for other purposes. In some embodiments,the temporary memory may delete the first executable code segment whenmonitor 101 is turned off, restarted, or otherwise reset. In someembodiments, the temporary memory may delete the first executable codesegment whenever the temporary memory returns to its native state.

In some embodiments, the second executable code segment may not be, byitself, sufficient to determine a physiological parameter of a subject.In such embodiments, the first executable code segment is necessary foroperation of the monitor. In other embodiments, the second executablecode segment may be sufficient to determine a physiological parameter ofa subject with inferior quality. In these embodiments, the firstexecutable code segment may be used to improve the quality of thephysiological parameter determination. In some embodiments, theexecutable code segment may be used to improve speed, accuracy, marginof error, or any other feature of the physiological parameterdetermination. In some embodiments, the first executable code segmentmay include improved mathematic techniques for determining physiologicaldata based on the output of sensor 150. For example, the firstexecutable code segment may provide improvements for pattern matching,noise filtering, operation of a neural net, or any other technique usedto determine physiological parameters. In some embodiments, the firstexecutable code segment may include improved techniques for processingthe output of sensor 150. For example, the first executable code segmentmay provide improvements in digital signal conditioning and filtering.

In some embodiments, monitor 101 may be configured to receive algorithmconfiguration data from sensor 150. The algorithm configuration data bestored in sensor memory 165 and be sent to monitor 101 when sensor 150becomes communicatively coupled to monitor 101. In some embodiments,sensor 150 may be configured to send the algorithm configuration datavia sensor port 175, while monitor 101 may be configured to receive thealgorithm configuration data via monitor port 130. Monitor 101 may alsobe configured to receive the PPG signal generated by sensor 150.

In some embodiments, monitor memory 120 may be configured to store asequence of ordered algorithm stages. In some embodiments, the sequenceof ordered algorithm stages may define an algorithm that is capable,when executed, of determining a physiological parameter of as subject(e.g., pulse rate, oxygen saturation, etc.). In other embodiments, thesequence of ordered algorithm stages may define an algorithm that iscapable for accomplishing other tasks, such as sensor calibration, usercommunication, or any other task known in the art. Once monitor 101receives the algorithm configuration data, the algorithm configurationdata may be stored in monitor memory 120.c

In some embodiments, at least one of the algorithm stages may be aconfigurable algorithm stage. The configurable algorithm stage maycomprise a plurality of alternative executable code segments. In someembodiments, processor 115 may use the algorithm configuration data toselect one of the alternative executable code segments for executionbased on the algorithm configuration data. Processor 115 may beconfigured to execute each of the algorithm stages according to thesequence. In some embodiments, when executing the configurable algorithmstage, processor 115 may be configured to only execute the alternativeexecutable code segment that was selected for execution, while otheralternative executable code segments may not be executed.

In some embodiments, processor 115 may use the algorithm configurationdata to configure the algorithm in other ways. For example, processor115 may use the algorithm configuration data to reorder the sequence ofalgorithm stages, modify any of the algorithm stages, create a newalgorithm stage, or fetch additional information from external sourcesusing communication interface 125. For example, an algorithm stage forsignal conditioning may comprise several alternative executable codesegments, each defining a different way of conditioning a signal. Thealgorithm configuration data may specify which signal conditioningalternative executable code segments should be used when sensor 150 isconnected to the monitor 101 in order to improve performance of monitor101. In another example, monitor 101 may create a new signalconditioning executable code segment based on the algorithmconfiguration data. In yet another example, monitor 101 may fetch asignal conditioning executable code segment from an external serverusing a network address specified by the algorithm configuration data.

In some embodiments, processor 115 may use the algorithm configurationdata to fetch one or more algorithm stages, alternative code segments orany other data from an external server via the Internet or any othernetwork. In some embodiments, processor 115 may delete the algorithmconfiguration data from monitor memory 120 after sensor 150 becomesdisconnected from monitor 101.

In some embodiments, monitor memory 120 may store the algorithm stagesusing permanent memory (e.g., flash memory, EEPROM, hard disk drive orread only memory), while the algorithm configuration data is storedusing temporary memory (e.g., RAM). Consequently, the algorithm stagesmay persist through connection/disconnection of multiple sensors, whilethe algorithm configuration data may be deleted due to natural operationof temporary memory. For example, RAM memory may delete the algorithmconfiguration data when the algorithm configuration data is no longerneeded and the memory is allocated for other purposes. In someembodiments, the temporary memory may delete the algorithm configurationdata when the monitor 101 is turned off, restarted, or otherwise reset.In some embodiments, the temporary memory may delete the algorithmconfiguration data whenever the temporary memory returns to its nativestate.

In some embodiments, data received by monitor 101 from sensor 150 may beencrypted or signed. In some embodiment, the data may be encrypted withsymmetric keys. In another embodiment, the data may be encrypted withasymmetric keys using, for example, private/public key cryptography(e.g., RSA encryption). For example, the data may be encrypted using apublic key, and decrypted using a private key stored by monitor memory120. In some embodiments, the data may be signed using private/publickey cryptography, or any other type of cryptography. In someembodiments, the data may be signed using a digital certificate, or adigital certificate chain. Monitor 101 may be configured to verify thedigital certificate using a network connection via a commutationinterface 125 (e.g., by accessing a website of a certificate issuingauthority). In some embodiments, monitor 101 may be configured to rejectthe data received from sensor 150, if the signature cannot be verified.In some embodiments, the signature may be a part of the executable codesegment stored by sensor memory 165, or a part of the algorithmconfiguration stored by sensor memory 165. In some embodiments, sensormemory 165 may include a checksum data or cyclic redundancy check datathat may be used by monitor 101 to verify that information received fromthe sensor memory has been transmitted correctly. Sensor memory 165 mayalso include information describing the type of executable code segments(e.g., language of the executable code segments) to ensure that theexecutable code segments are executed correctly. In some embodiments,sensor memory 165 may have a directory structure which lists availableexecutable code segments and indicates memory locations of the availableexecutable code segments depending on the type of processor 115. Forexample, if processor 115 is an ARM Cortex-M4 processor, monitor 101 maybe provided with a different list of available executable code segmentsthan if processor 115 is an 8051 type processor. In some embodiments,when monitor 101 fails to find executable code segments suitable for itsprocessor type, monitor 101 may not receive any executable code segmentsfrom sensor 150.

User interface 110 may include user input, display, and speaker. Userinterface 110 may include, for example, any suitable device such as oneor more medical devices (e.g., a medical monitor that displays variousphysiological parameters, a medical alarm, or any other suitable medicaldevice that either displays physiological parameters or uses the outputof the processor 115 as an input), one more display devices (e.g.,monitor, personal digital assistant (PDA), mobile phone, tabletcomputer, any other suitable display device, or any combinationthereof), one or more audio devices, one or more memory devices (e.g.,hard disk drive, flash memory, RAM, optical disk, any other suitablememory device, or any combination thereof), one or more printingdevices, any other suitable output device, or any combination thereof.

User interface 110 may include any type of user input device such as akeyboard, a mouse, a touch screen, buttons, switches, a microphone, ajoystick, a touch pad, or any other suitable input device. The inputsreceived by taste interface 110 can include information about thesubject, such as age, weight, height, diagnosis, medications,treatments, and so forth. User interface 110 to may include any type ofuser output device such as a display, an audio speaker, a haptic device,a printer or any other suitable output device.

In an embodiment, the subject may be a medical patient and userinterface 110 may exhibit (e.g., via a monitor) a list of values whichmay generally apply to the patient, such as, for example, age ranges ormedication families, which the user may select using user input.Additionally, user interface 110 may display, for example, an estimateof a subject's blood oxygen saturation, pulse rate information,respiration rate and/or effort information, blood pressure information,hemoglobin concentration information, cardiac output, fluidresponsiveness parameters, any other parameters, and any combinationthereof. User interface 110 may include any type of display such as acathode ray tube display, a flat panel display such a liquid crystaldisplay or plasma display, or any other suitable display device. Aspeaker of user interface 110 may provide an audible sound that may beused in various embodiments, such as for example, sounding an audiblealarm in the event that a patient's physiological parameters are notwithin a predefined normal range.

Communication interface 125 may enable monitor 101 to exchangeinformation with external devices. Communication interface 125 mayinclude any suitable hardware or hardware and software, which may allowmonitor 101 to communicate with electronic circuitry, a device, anetwork, a server or other workstations, a display, or any combinationthereof. In some embodiments, communication interface 125 is coupled tosensor port 175 or a digital communications port of an external device.Communication interface 125 may include one or more receivers,transmitters, transceivers, antennas, plug-in connectors, ports,communications buses, communications protocols, device identificationprotocols, any other suitable hardware and software, or any combinationthereof. Communication interface 115 may be configured to allow wiredcommunication, wireless communication, or both. In some embodiments,communication interface 125 may enable monitor 101 to exchangeinformation with external devices such as a ventilator, a capnograph, atrans-thoracic impedance device, a pneumotachometer, any other suitableexternal devices, and any combination thereof. For example,communication interface 125 may receive respiration information from anyof the foregoing external devices, any other suitable devices, or anysuitable combination thereof. In some embodiments, communicationinterface 125 may enable monitor 101 to exchange information with amulti-parameter monitor or a calibration device.

FIG. 2 shows a block diagram of an exemplary state of monitor memory 201of a physiological monitor (e.g., monitor 101 of FIG. 1 ) in accordancewith some embodiments of the present disclosure. In some embodiments,monitor memory 201 may store any number of algorithms. For example, themonitor memory 201 may store several algorithms: algorithm 1 219,algorithm 2 220, . . . , algorithm N 230 (where N is any integer),Algorithms 1-N of FIG. 2 may comprise algorithms for determiningphysiological parameters of a subject, processing a signal received froma sensor, calibrating the sensor, or for performing any other operationof the monitor.

Each of algorithms 1-N of FIG. 2 may comprise one or more executablecode segments. In order to execute one of the algorithms, the processorof the physiological monitoring system may be configured to execute theexecutable code segments of that algorithm in a specified order. In someembodiments the executable code segments may be organized into algorithmstages.

In some embodiments, Algorithm #1 210 may comprise an algorithm fordetermining oxygen saturation of a subject. Algorithm #2 210 maycomprise a plurality of executable code segments, where each executablecode segment is suitable for a particular task. For example, oneexecutable code segment may be suitable for signal conditioning. Anotherexecutable code segment may be suitable for subtraction of ambientlight. Yet another executable code segment may be suitable foridentifying a fiducial point in a PPG signal. In some embodiments, theplurality of executable code segments may comprise all algorithm stagesnecessary to determine a physiological parameter of a subject.Alternatively, the plurality of executable code segments may lack acertain executable code segment that is needed for determining thephysiological parameter of a subject. The executable code segment thatis lacking may be received, for example, from a sensor that iscommunicatively coupled to the monitor.

In some embodiments, Algorithms #1-N of FIG. 2 may include algorithmsfor determining blood oxygen saturation, pulse rate, blood pressure,breathing information, any other physiological parameter, and anycombination thereof. In some embodiments. Algorithms #1-N may includealgorithms for calibrating the sensor, operating the user interface,operating the communication interface, or any other purpose that isknown in the art.

FIG. 3 shows a block diagram of several exemplary memory states 320,330, and 340 of monitor memory 315 and sensor memory 310 of aphysiological monitoring system (e.g., physiological monitoring system100 of FIG. 1 ) in accordance with some embodiments of the presentdisclosure. Memory state 320 illustrates an exemplary state of monitormemory 315 prior to sensor connection. Memory state 330 illustrates anexemplary state of monitor memory 315 during sensor connection. Memorystate 340 illustrates an exemplary state of monitor memory 315 aftersensor disconnection. Each of memory states 320, 330, and 340 maycomprise a plurality of executable code segments. For example, memorystate 320 may comprise executable code segments 1-N excluding executablecode segment 2.

In some embodiments, sensor memory 310 may comprise an executable codesegment (executable code segment 2) that is relevant for determining atleast one physiological parameter of a subject. In some embodiments,sensor memory 310 may comprise other executable code segment, or anyother type of data relevant for determining at least one physiologicalparameter of a subject. In some embodiments, when the monitor becomescommunicatively coupled to the sensor, the executable code segment 2,that is stored in sensor memory 310, may be transmitted to monitormemory 315. Other executable code segment and other data may also betransmitted to monitor memory 315. In some embodiments, the executablecode segment 2 may be transmitted to the monitor memory 315 in responseto the sensor becoming, communicatively coupled to the monitor. In someembodiments, the executable code segment 2 may be transmitted to themonitor memory in response to a request from the monitor.

Subsequently, memory state 330, during sensor connection, may containthe executable code segment 2 received from the sensor memory 310. Forexample, memory state 330 may contain executable code segments 1-N,including executable code segment 2. In some embodiments, memory state320, prior to sensor connection, may comprise an insufficient amount ofexecutable code segments for determining at least one physiologicalparameter (or for performing any other task). For example, executablecode segment 2, that is necessary for such determination, may be absentfrom memory state 320. In some embodiment, other necessary executablecode segment may also be absent. After the executable code segment 2 isstored by the monitor memory 315, during the sensor connection, memorystate 330 may store all executable code segments necessary fordetermining at least one physiological parameter. In some otherembodiments, the memory state 320, prior to sensor connection, maycomprise a sufficient amount of executable code segments for determininga physiological parameter with an inferior quality. After the executablecode segment 2 is stored by monitor memory 315, during the sensorconnection, memory state 330 may store an algorithm that is capable ofdetermining a physiological parameter with an improved quality. Forexample, the executable code segment 2 may allow the monitor todetermine at least one physiological parameter with a higher accuracy,higher speed, higher confidence, any other quality improvement, or anycombination thereof. In some embodiments, quality improvement may beachieved due to the executable code segment 2 comprising executable codethat is specific to the sensor. For example, executable code segments1-N (excluding executable code segment 2) may comprise a generic,algorithms suitable for calibrating most sensors that may be coupled tothe monitor, while executable code segment 2 may comprise specificexecutable commands necessary for improved calibration of the sensorthat stores executable code segment 2. In some embodiments, the sensormay comprise a less consistent type of an LED light source that mayrequire additional calibration to function properly. Executable codesegment 2 may provide one or more executable commands necessary for thisadditional calibration.

Subsequently, a monitor may become communicatively disconnected from thesensor. In some embodiments, the executable code segment 2 that wasreceived from sensor memory 310 may be deleted from monitor memory 315,after sensor disconnection. In some embodiments, other executable codesegments and other types of data that were received from sensor memory310 may also deleted from monitor memory 315, after sensordisconnection. In some embodiments, the executable code segment 2 thatwas received from sensor memory 310 may be deactivated, after sensordisconnection. After executable code segment 2 is deleted, memory state340, after sensor disconnection, may comprise executable code segments1-N excluding executable code segment 2. In some embodiments, theexecutable code segment 2 may be deleted from monitor memory 315 inresponse to the sensor becoming disconnected. In some embodiment, theexecutable code segment 2 may be deleted from monitor memory 315 after apredetermined amount of time has elapsed after the sensor disconnection.The executable code segment 2 may also be deleted from monitor memory315 after a different sensor becomes communicatively coupled to themonitor.

FIG. 4 shows a block diagram of monitor memory 420 and sensor memory 410of a physiological monitoring system (e.g., physiological monitoringsystem 100 of FIG. 1 ) in accordance with some embodiments of thepresent disclosure. In some embodiments, monitor memory 420 may store asequence of algorithm stages: algorithm stage 1 430, algorithm stage 2440, configurable algorithm stage 450, . . . , and algorithm stage N460, where N is any integer. In some embodiments monitor memory 420 mayalso store more than one configurable algorithm stage. In someembodiments, monitor memory 420 may also store other sequences ofalgorithm stages. In some embodiments, the sequence of algorithm stages430, 440, 450, and 460 may be executed in a predetermined order todetermine a physiological parameter of subject (or to accomplish anyother task). In some embodiments, each of the algorithm stages 430, 440,450, and 460 may comprise one or more executable code segments.

In some embodiments, algorithm stage 450 may be a configurable algorithmstage. For example, algorithm stage 450 may comprise several executablecode segments including: executable code segment 1 451, executable codesegment 2 452, executable code segment N 453, where N is any integer. Insome embodiments, one of the alternative executable code segments 1-N ofFIG. 4 may be selected for execution, before the algorithm stage 450 isexecuted. In some embodiments, each of the alternative executable codesegments 1-N may have an associated activation flag 455, 456, and 457.For example, alternative executable code segments 451 may have anassociated activation flag 455. In some embodiments, each of theactivation flags 1-N may comprise a single memory bit, where the bitbeing set to “1” indicates that the activation flag is active, and wherethe bit being set to “O” indicates that the activation flag is inactive.However, any other activation flag known in the art may also be used. Insome embodiments, when configurable algorithm stage 450 is executed,only alternative executable code segments that have an active activationflag, are executed. For example, only executable code segment 451 may beexecuted if activation flag 455 is active, while all other activationflags are inactive. In some embodiments, only one of the alternativeexecutable code segments 1-N of FIG. 4 may have an active activationflag. Alternatively, several of the alternative executable code segments1-N may have active activation flags.

In some embodiments, the monitor may set the status of activation flags1-N of FIG. 4 based on algorithm configuration data 415 received fromsensor memory 410. For example algorithm configuration data 415 mayindicate which of activation flags 1-N should be active and inactive. Insome embodiment, algorithm configuration data 415 may provide data thatwould allow the monitor to determine which of activation flags 1-Nshould be active and inactive in another way. For example, algorithmconfiguration data 415 may identify the model number the sensor, and themonitor may use a look-up table to determine how activation flaps 1-N ofFIG. 4 should be set. In some embodiment, algorithm configuration data415 may provide data that would allow the monitor to configure allconfigurable algorithm stages stored by monitor memory 420.

In some embodiments, the monitor may delete algorithm configuration data415 after the sensor become communicatively disconnected form themonitor. In some embodiments, the monitor may delete or reset activationflags 1-N of FIG. 4 after the sensor become communicatively disconnectedform the monitor. All activation flags 1-N may also be reset after thesensor become communicatively disconnected form the monitor.

FIG. 5 shows an illustrative flow diagram including steps for creatingand executing an algorithm in accordance with some embodiments of thepresent disclosure. The steps of FIG. 5 may be carried out by acomponent of a physiological monitoring system (e.g., system 100 of FIG.1 ).

Step 510 may include the physiological monitoring system receivingsensor data from a sensor. The data may be received via a communicationport. In some embodiments, the physiological monitoring system may alsoreceive a physiological signal (e.g., a PPG signal) from the sensor. Thealgorithm sensor data may be received in response to the sensor becomingcommutatively coupled to the physiological monitoring system.

Step 520 may include the physiological monitoring system determining ifthe sensor data comprises algorithm configuration data. In someembodiments, the sensor data may explicitly identify algorithmconfiguration data. Alternatively, the physiological monitoring systemmay expect algorithm configuration data by certain features. Forexample, algorithm configuration data may contain a signature that maybe used by the physiological monitoring system to identify algorithmconfiguration data. If the algorithm configuration data is identified,the physiological monitoring, system may perform step 530, otherwise thephysiological monitoring system may proceed to step 540 skipping step530.

Step 530 may include the physiological monitoring system configuring analgorithm based on the received algorithm configuration data. In someembodiments, the algorithm may be executable to determine at least onephysiological parameter of a subject based on a physiological signalreceived from the sensor. In some embodiments, the algorithm maycomprise a configurable algorithm stage that comprises a plurality ofalternative executable code segments. The physiological monitoringsystem may configure the configurable algorithm stage by selecting oneof the alternative executable code segments for execution based on thealgorithm configuration data. In some embodiments, the alternativeexecutable code segments that were not selected for execution will benot be executed when the algorithm is executed at steps 550 or 555. Insome embodiments, the algorithm may be configured based on the algorithmconfiguration data in other ways known in the art.

Step 540 may include the physiological monitoring system determining ifthe sensor data comprises a sensor executable code segment. In someembodiments, the sensor executable code segment may be necessary for thealgorithm to determine a physiological parameter of the subject.Alternatively, the sensor executable code segment may increase thequality of the physiological parameter algorithm. If an appropriatesensor executable code segment is identified, the physiologicalmonitoring system may execute step 550, alternatively step 555 may beexecuted.

Step 550 may include the physiological monitoring system executing thealgorithm that includes executable code segments that were stored by thephysiological monitoring system prior to the sensor becoming coupled tothe monitor, and the sensor executable code segment. The algorithm maybe used to determine a physiological parameter of the subject. Thephysiological parameter may be displayed via a user interface. Ifalgorithm configuration data was received, the algorithm executed by thephysiological monitoring system at step 550 may include the alternativeexecutable code segment selected at step 530. Alternatively, ifalgorithm configuration data was not received, the algorithm may beexecuted without an alternative executable code segment being selectedstep 530. For example, the algorithm executed at step 550 may not haveany alternative executable code segments, or the algorithm may include adefault alternative executable code segment.

Step 555 may include the physiological monitoring system executing thealgorithm that includes executable code segments stored by thephysiological monitoring system prior to the sensor becoming coupled tothe monitor and does not include a sensor executable code segment. Thealgorithm may determine a physiological parameter of the subject, suchas heart rate or oxygen saturation. Similar to step 550, thephysiological parameter may be displayed via a user interface. Ifalgorithm configuration data was received, the algorithm executed by thephysiological monitoring system at step 555 may include the alternativeexecutable code segment selected at step 530. Alternatively, ifalgorithm configuration data was not received, the algorithm may beexecuted without an alternative executable code segment being selectedstep 530. For example, the algorithm executed at step 555 may not haveany alternative executable code segments, or the algorithm may include adefault alternative executable code segment.

Step 560 may include the physiological monitoring system deleting thesensor data. In some embodiments, the data may be deleted or deactivatedafter the sensor becomes communicatively disconnected from thephysiological monitoring system. For example, the sensor data may bedeleted after a predetermined amount of time has passed after the sensoris disconnected. Alternatively, the sensor data may be deleted inresponse to the sensor becoming disconnected or after another sensor isconnected to the physiological monitoring system.

It will be understood that algorithm configuration data received at step510 may also be used to configure one or more other configurablealgorithm stages of the same algorithm or of other algorithms stored bythe monitor. It will be understood that data received at step 510 mayalso comprise one or more other sensor executable code segments that maybe incorporated into the same algorithm or into other algorithms storedby the monitor. It will be understood that in some embodiments, steps510-540 may be performed several times, for example, to configuremultiple configurable algorithm stages, and to receive multipleexecutable code segments. In some embodiments, at step 550, the monitormay execute an algorithm that includes multiple sensor executable codesegments. In some embodiments, at step 550 or step 555, the monitor mayexecute an algorithm that includes multiple configurable algorithmstages. It will be understood that some of the steps of FIG. 5 areoptional. For example, in embodiments that do not use algorithmconfiguration data, steps 520 and 530 may be omitted. As anotherexample, in embodiments that do not use a sensor executable codesegment, steps 540 and 550 may be omitted.

It will be understood that the aforementioned techniques are not limitedto PPG systems, and may be applied to any suitable signal processing inany suitable system. For example, the techniques may be applied toelectrical signals additionally or alternatively to applying it tooptical signals. In another example, the techniques may be appliedadditionally or alternatively to respiration signals.

The foregoing is merely illustrative of the principles of thisdisclosure and various modifications may be made by those skilled in theart without departing from the scope of this disclosure. The abovedescribed embodiments are presented for purposes of illustration and notof limitation. The present disclosure also can take many forms otherthan those explicitly described herein. Accordingly, it is emphasizedthat this disclosure is not limited to the explicitly disclosed methods,systems, and apparatuses, but is intended to include variations to andmodifications thereof, which are within the spirit of the followingclaims.

What is claimed is:
 1. A physiological monitoring system, comprising: asensor configured to: store algorithm configuration data; and generate aphotoplethysmographic (PPG) signal; and a physiological monitorcomprising: a port communicatively coupled to the sensor, the port beingconfigured to receive the algorithm configuration data from the sensorand receive the PPG signal from the sensor; and non-transitory memoryconfigured to store a first executable code segment configured toexecute a first algorithm for determining one or more physiologicalparameters of a subject; and at least one processor configured to:configure or modify at least part of the first algorithm based upon thealgorithm configuration data received by the monitor from the sensor;and execute the first executable code segment to execute the firstalgorithm as configured or modified by the algorithm configurationdata_to determine at least one physiological parameter of a subjectbased on the PPG signal; and wherein the first executable code segmentis operable without the algorithm configuration data; and wherein thefirst executable code segment is maintained in the non-transitory memoryof the physiological monitor subsequent to disconnection of the sensorfrom the port.
 2. The physiological monitoring system of claim 1,wherein the at least one processor is configured to delete the algorithmconfiguration data or deactivate the configurations or modifications ofthe first algorithm in response to the sensor becoming communicativelydisconnected from the port or in response to a second sensor becomingcommunicatively coupled to the port.
 3. The physiological monitoringsystem of claim 1, wherein the at least one processor is configured todelete the algorithm configuration data or deactivate configurations ormodifications of the first algorithm after a predetermined amount oftime has elapsed after the sensor becomes communicatively disconnectedfrom the port.
 4. The physiological monitoring system of claim 1,wherein execution of the first executable code segment results in ahigher quality determination of the at least one physiological parameterthan execution of the first executable code segment withoutconfiguration or modification of at least part of the first algorithmbased upon the algorithm configuration data received by the monitor fromthe sensor.
 5. The physiological monitoring system of claim 1, whereinthe at least one processor is configured to delete the algorithmconfiguration data or deactivate the configurations or modifications ofthe first algorithm from non-transitory memory of the physiologicalmonitor.
 6. The physiological monitoring system of claim 1, wherein thealgorithm configuration data is encrypted, and wherein the at least oneprocessor is configured to decrypt the algorithm configuration data. 7.A physiological sensor comprising: at least one light source configuredto generate a light signal; at least one light detector configured toreceive the light signal after the light signal has been attenuated bybody tissue of a subject; non-transitory memory configured to storealgorithm configuration data; and a port configured to: transmit thereceived light signal to a physiological monitor; and transmit thealgorithm configuration data to the physiological monitor, wherein thealgorithm configuration data and a first executable code segment storedon the physiological monitor enable determination of a physiologicalparameter of the subject based on the light signal upon transmission ofthe algorithm configuration data to the physiological monitor, whereinthe first executable code segment is operable without the algorithmconfiguration data, and wherein the algorithm configuration data isdeleted after the physiological monitor becomes communicativelydisconnected from the port.
 8. The physiological sensor of claim 7,wherein the algorithm configuration data enables a higher qualitydetermination of the physiological parameter than execution of the firstexecutable code segment without the algorithm configuration data.
 9. Thephysiological sensor of claim 7, wherein the algorithm configurationdata encrypted.
 10. The physiological sensor of claim 7, wherein thealgorithm configuration data configures or modifies the first executablecode segment to determine the physiological parameter of the subject.11. A method for monitoring a subject, the method comprising:generating, using a photoplethysmographic (PPG) sensor, a PPG signal;transmitting, using the PPG sensor, the PPG signal and algorithmconfiguration data to a physiological monitor; receiving, using thephysiological monitor, the PPG signal and the algorithm configurationdata from the sensor, wherein the physiological monitor comprisesnon-transitory memory that stores a first executable code segment;executing, by at least one processor of the physiological monitor, thefirst executable code segment as configured or modified by the algorithmconfiguration data received from the sensor to determine at least onephysiological parameter of a subject based on the PPG signal; anddeleting the algorithm configuration data from the physiological monitorafter the PPG sensor becomes communicatively disconnected from thephysiological monitor.
 12. The method of claim 11, wherein the deletingthe algorithm configuration data from the physiological monitorcomprises deleting the algorithm configuration data in response to thePPG sensor becoming communicatively disconnected from the physiologicalmonitor or in response to a second PPG sensor becoming communicativelycoupled to the physiological monitor.
 13. The method of claim 11,wherein the deleting the algorithm configuration data from thephysiological monitor comprises deleting the algorithm configurationdata after a predetermined amount of time has elapsed after the PPGsensor becomes communicatively disconnected from the physiologicalmonitor.
 14. The method of claim 11, further comprising decrypting, bythe at least one processor of the physiological monitor, the algorithmconfiguration data.